package messageprocessors;

import java.util.Map;



public class Artikel {

	public int id;// ArtikelNr
	public int artikelnr;
	public String name;
	public String beschreibung;
	public int bestand;
	public Map<String, String> map;

	
	
	public Artikel(){
		this.id=0;
		this.artikelnr=0;
		this.beschreibung="test";
		this.name="test2";
		this.bestand=10;
		
	}
	
	
	
	public Artikel(int id, String name, int bestand){
		this.id=id;
		this.name=name;
		this.bestand=bestand;
	}
	
	

	public Artikel(int id, int artikelnr, String name, String beschreibung,int bestand) {
		
		this.id = id;
		this.artikelnr = artikelnr;
		this.name = name;
		this.beschreibung = beschreibung;
		this.bestand = bestand;
	}

	public void createMap(){
		this.map.put("id", convertIntToString(this.getId()));
		this.map.put("artikelnr", convertIntToString(this.getArtikelnr()));
		this.map.put("name", this.getName());
		this.map.put("beschreibung",this.getBeschreibung());
		this.map.put("bestand",convertIntToString(this.getBestand()));
	}
	
	public Artikel generateArtikel(Map<String, String> map){
		Artikel result=new Artikel();
		result.setArtikelnr(Integer.parseInt(map.get("artikelnr")));
		result.setName(map.get("name"));
		result.setBeschreibung(map.get("beschreibung"));
		result.setBestand(Integer.parseInt(map.get("bestand")));
		return result;
	}

	/**
	 * @return the id
	 */
	public int getId() {
		return id;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(int id) {
		this.id = id;
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}


	/**
	 * @return the bestand
	 */
	public int getBestand() {
		return bestand;
	}

	/**
	 * @param bestand the bestand to set
	 */
	public void setBestand(int bestand) {
		this.bestand = bestand;
	}


	/**
	 * @return the artikelnr
	 */
	public int getArtikelnr() {
		return artikelnr;
	}



	/**
	 * @param artikelnr the artikelnr to set
	 */
	public void setArtikelnr(int artikelnr) {
		this.artikelnr = artikelnr;
	}



	/**
	 * @return the beschreibung
	 */
	public String getBeschreibung() {
		return beschreibung;
	}



	/**
	 * @param beschreibung the beschreibung to set
	 */
	public void setBeschreibung(String beschreibung) {
		this.beschreibung = beschreibung;
	}
	

	public String convertIntToString(int val) {
		String str = "";
		str+= val;
		return str;	
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "Name : " + name +  "/nID : " + id + "/nBestand = " + bestand + "/n";
	}

	
}
